iT邦幫忙

DAY 4
0

實習、專題除錯筆記系列 第 4

實習、專題除錯筆記(四)為什麼用 PHP 的 json_encode 總是無法正確的處理中文呢?

  • 分享至 

  • xImage
  •  

問題四 為什麼用 PHP 的 json_encode 總是無法正確的處理中文呢?

用 PHP 的 json_encode 來處理中文的時候,中文都會被編碼,變成不可讀的類似「 \u*** 」的 Unicode 格式,還會在一定程度上增加傳輸的流量。

<?php
echo json_encode("中文");

//"\u4e2d\u6587"
?>

這個在舊版的 PHP 開發上會有許多的問題,因為 「 \u*** 」的 \ 是跳脫字元,會導致你在沒辦法正確的輸出中文。

不過在 PHP5.4,JSON Endoe 新增了一個選項:「JSON_UNESCAPED_UNICODE」,故名思議,就是說,JSON 不要編碼 Unicode。

看下面的例子:

<?php
echo json_encode("中文", JSON_UNESCAPED_UNICODE);

//"中文"
?>

參數蠻多的,如果在 JSON Endoe 碰到問題可以參考看看喔!
http://tw1.php.net/manual/en/json.constants.php


上一篇
實習、專題除錯筆記(三)-- 為什麼用了 Angular 的第三方套件就沒辦法 binding?
下一篇
實習、專題除錯筆記(五)為什麼 binding 的值有改變,畫面卻沒有相對應的變更?
系列文
實習、專題除錯筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言